op {
  name: "QuantizeAndDequantizeV2"
  input_arg {
    name: "input"
    type_attr: "T"
  }
  input_arg {
    name: "input_min"
    type_attr: "T"
  }
  input_arg {
    name: "input_max"
    type_attr: "T"
  }
  output_arg {
    name: "output"
    type_attr: "T"
  }
  attr {
    name: "signed_input"
    type: "bool"
    default_value {
      b: true
    }
  }
  attr {
    name: "num_bits"
    type: "int"
    default_value {
      i: 8
    }
  }
  attr {
    name: "range_given"
    type: "bool"
    default_value {
      b: false
    }
  }
  attr {
    name: "T"
    type: "type"
    allowed_values {
      list {
        type: DT_FLOAT
        type: DT_DOUBLE
      }
    }
  }
}
op {
  name: "QuantizeAndDequantizeV2"
  input_arg {
    name: "input"
    type_attr: "T"
  }
  input_arg {
    name: "input_min"
    type_attr: "T"
  }
  input_arg {
    name: "input_max"
    type_attr: "T"
  }
  output_arg {
    name: "output"
    type_attr: "T"
  }
  attr {
    name: "signed_input"
    type: "bool"
    default_value {
      b: true
    }
  }
  attr {
    name: "num_bits"
    type: "int"
    default_value {
      i: 8
    }
  }
  attr {
    name: "range_given"
    type: "bool"
    default_value {
      b: false
    }
  }
  attr {
    name: "T"
    type: "type"
    allowed_values {
      list {
        type: DT_BFLOAT16
        type: DT_FLOAT
        type: DT_DOUBLE
      }
    }
  }
}
op {
  name: "QuantizeAndDequantizeV2"
  input_arg {
    name: "input"
    type_attr: "T"
  }
  input_arg {
    name: "input_min"
    type_attr: "T"
  }
  input_arg {
    name: "input_max"
    type_attr: "T"
  }
  output_arg {
    name: "output"
    type_attr: "T"
  }
  attr {
    name: "signed_input"
    type: "bool"
    default_value {
      b: true
    }
  }
  attr {
    name: "num_bits"
    type: "int"
    default_value {
      i: 8
    }
  }
  attr {
    name: "range_given"
    type: "bool"
    default_value {
      b: false
    }
  }
  attr {
    name: "T"
    type: "type"
    allowed_values {
      list {
        type: DT_BFLOAT16
        type: DT_HALF
        type: DT_FLOAT
        type: DT_DOUBLE
      }
    }
  }
}
op {
  name: "QuantizeAndDequantizeV2"
  input_arg {
    name: "input"
    type_attr: "T"
  }
  input_arg {
    name: "input_min"
    type_attr: "T"
  }
  input_arg {
    name: "input_max"
    type_attr: "T"
  }
  output_arg {
    name: "output"
    type_attr: "T"
  }
  attr {
    name: "signed_input"
    type: "bool"
    default_value {
      b: true
    }
  }
  attr {
    name: "num_bits"
    type: "int"
    default_value {
      i: 8
    }
  }
  attr {
    name: "range_given"
    type: "bool"
    default_value {
      b: false
    }
  }
  attr {
    name: "T"
    type: "type"
    allowed_values {
      list {
        type: DT_BFLOAT16
        type: DT_HALF
        type: DT_FLOAT
        type: DT_DOUBLE
      }
    }
  }
  attr {
    name: "round_mode"
    type: "string"
    default_value {
      s: "HALF_TO_EVEN"
    }
    allowed_values {
      list {
        s: "HALF_TO_EVEN"
        s: "HALF_UP"
      }
    }
  }
}
op {
  name: "QuantizeAndDequantizeV2"
  input_arg {
    name: "input"
    type_attr: "T"
  }
  input_arg {
    name: "input_min"
    type_attr: "T"
  }
  input_arg {
    name: "input_max"
    type_attr: "T"
  }
  output_arg {
    name: "output"
    type_attr: "T"
  }
  attr {
    name: "signed_input"
    type: "bool"
    default_value {
      b: true
    }
  }
  attr {
    name: "num_bits"
    type: "int"
    default_value {
      i: 8
    }
  }
  attr {
    name: "range_given"
    type: "bool"
    default_value {
      b: false
    }
  }
  attr {
    name: "T"
    type: "type"
    allowed_values {
      list {
        type: DT_BFLOAT16
        type: DT_HALF
        type: DT_FLOAT
        type: DT_DOUBLE
      }
    }
  }
  attr {
    name: "round_mode"
    type: "string"
    default_value {
      s: "HALF_TO_EVEN"
    }
    allowed_values {
      list {
        s: "HALF_TO_EVEN"
        s: "HALF_UP"
      }
    }
  }
  attr {
    name: "narrow_range"
    type: "bool"
    default_value {
      b: false
    }
  }
}
op {
  name: "QuantizeAndDequantizeV2"
  input_arg {
    name: "input"
    type_attr: "T"
  }
  input_arg {
    name: "input_min"
    type_attr: "T"
  }
  input_arg {
    name: "input_max"
    type_attr: "T"
  }
  output_arg {
    name: "output"
    type_attr: "T"
  }
  attr {
    name: "signed_input"
    type: "bool"
    default_value {
      b: true
    }
  }
  attr {
    name: "num_bits"
    type: "int"
    default_value {
      i: 8
    }
  }
  attr {
    name: "range_given"
    type: "bool"
    default_value {
      b: false
    }
  }
  attr {
    name: "T"
    type: "type"
    allowed_values {
      list {
        type: DT_BFLOAT16
        type: DT_HALF
        type: DT_FLOAT
        type: DT_DOUBLE
      }
    }
  }
  attr {
    name: "round_mode"
    type: "string"
    default_value {
      s: "HALF_TO_EVEN"
    }
    allowed_values {
      list {
        s: "HALF_TO_EVEN"
        s: "HALF_UP"
      }
    }
  }
  attr {
    name: "narrow_range"
    type: "bool"
    default_value {
      b: false
    }
  }
  attr {
    name: "axis"
    type: "int"
    default_value {
      i: -1
    }
  }
}
